From 0888e6f4854507600bdb72fe2eea65496be98407 Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Thu, 27 Oct 2011 11:09:26 +0100 Subject: [PATCH] gtk: Fix XIGrabKeycode usage A modifier of "0" is still a modifier and must be submitted normally. A num_modifiers of 0 is essentially a noop in the server. As mentioned by Peter Hutterer https://bugzilla.gnome.org/show_bug.cgi?id=662839 --- gtk/gtkdnd.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/gtk/gtkdnd.c b/gtk/gtkdnd.c index 1b8baa45da..e1164252a5 100644 --- a/gtk/gtkdnd.c +++ b/gtk/gtkdnd.c @@ -513,13 +513,8 @@ grab_dnd_keys (GtkWidget *widget, evmask.mask_len = sizeof (mask); evmask.mask = mask; - if (grab_keys[i].modifiers != 0) - { - num_mods = 1; - mods.modifiers = grab_keys[i].modifiers; - } - else - num_mods = 0; + num_mods = 1; + mods.modifiers = grab_keys[i].modifiers; XIGrabKeycode (GDK_WINDOW_XDISPLAY (window), deviceid, @@ -591,13 +586,8 @@ ungrab_dnd_keys (GtkWidget *widget, #ifdef XINPUT_2 if (using_xi2) { - if (grab_keys[i].modifiers != 0) - { - num_mods = 1; - mods.modifiers = grab_keys[i].modifiers; - } - else - num_mods = 0; + num_mods = 1; + mods.modifiers = grab_keys[i].modifiers; XIUngrabKeycode (GDK_WINDOW_XDISPLAY (window), deviceid, -- 2.30.2